#ifndef GAME_COMMON_H
#define GAME_COMMON_H

#ifndef _UNICODE
#define _UNICODE 
#endif


#ifndef UNICODE
#define UNICODE 
#endif

#include <stdio.h>
#include <stdarg.h>
#include <math.h>
#include <vector>
#include <assert.h>

#define countof(x) (sizeof(x)/sizeof((x)[0]))

struct Point {
	int x, y;
	Point (int _x = 0, int _y = 0): x(_x), y(_y) {}
};

typedef unsigned char byte;



/*
*   error should be called like
*         trace(function_name, format, arg1, ...);
*/
bool trace(char *format, ...);

bool prepare (const char * fname, int line);

#define TRACE prepare (__FILE__, __LINE__) && trace

#endif /* !GAME_COMMON_H */